import sys
import os

# 添加项目根目录到Python路径
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '../../../')))

from src.local_tools.projectManager import ProjectManager


def save_code_file(file_path="src/code1.py", content="", mode="w"):
    """
    保存源代码文件到指定路径
    
    Args:
        file_path: 相对路径文件名，默认是 src/code1.py
        content: 文件内容
        mode: 文件写入模式，默认是新建'w'，对应ProjectManager的'overwrite'
            'w' -> 'overwrite'
            'a' -> 'append'
    
    Returns:
        生成的文件的绝对路径
    """
    # 初始化ProjectManager
    manager = ProjectManager()
    
    # 转换模式
    manager_mode = 'overwrite' if mode == 'w' else 'append'
    
    # 调用generate_file保存文件
    return manager.generate_file(file_path, content, mode=manager_mode)


# 示例用法
if __name__ == "__main__":
    example_content = '''import os


def hello_world():
    """打印Hello World的函数"""
    print("Hello, World!")


def process_data(data):
    """处理数据的示例函数
    
    Args:
        data: 要处理的数据列表
    
    Returns:
        处理后的数据列表
    """
    return [x * 2 for x in data]


if __name__ == "__main__":
    hello_world()
    
    # 测试数据处理函数
    test_data = [1, 2, 3, 4, 5]
    result = process_data(test_data)
    print(f"原始数据: {test_data}")
    print(f"处理后数据: {result}")
'''
    
    file_path = save_code_file(content=example_content)
    print(f"源代码文件已保存至: {file_path}")